home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / umich / tt / tt_dis.zoo / dis.doc next >
Text File  |  1991-11-17  |  11KB  |  217 lines

  1.   
  2.        Instructions for Atari TT DIS, a 68030/68882 disassembler
  3.   
  4.                       Version 1.01 - 17th Nov 1991
  5.   
  6.   Introduction
  7.   
  8.      DIS is a 68000  disassembler for the Atari TT series computers.   It
  9.   is not in the public domain but can be freely distributed provided that
  10.   this does not involve any direct or indirect profit or an inducement to
  11.   purchase other items (e.g products,  magazines  or  services).  DIS has
  12.   been  derived from an  earlier version on  the Atari ST and this  means
  13.   that the 68000 core has been fairly well tested. However the extensions
  14.   for the 68030 and the 68882 have only  been tested in a limited way and
  15.   there will certainly be bugs in this area.  Please let me know any that
  16.   you come accross.
  17.   
  18.   Operation of DIS
  19.   
  20.      On entry DIS  displays a > prompt and waits for a command line which
  21.   consists of  a letter which may be followed by further parameters which
  22.   are separated from  each other by either commas or blank spaces.  A '?'
  23.   in response to the prompt gives a summary of commands. In the following
  24.   command descriptions 'x1', 'x2' etc. represent numeric parameters which
  25.   are normally in hexadecimal notation.  If a program with a symbol table
  26.   is loaded then x1, x2 etc. can be symbols.
  27.                                                                          
  28.   Command              Function
  29.   
  30.   I  x1 x2             Disassemble Instructions from x1 to x2
  31.   
  32.   B  x1 x2             Disassemble data Bytes  (8 bits) from x1 to x2
  33.   
  34.   W  x1 x2             Disassemble data Words (16 bits) from x1 to x2
  35.   
  36.   L  x1 x2             Disassemble Long words (32 bits) from x1 to x2
  37.   
  38.   C  x1 x2             Disassemble in Character format from x1 to x2
  39.   
  40.   A  x1 x2             Disassemble a table of Addresses from x1 to x2
  41.   
  42.   M  x1 x2 template    Disassemble according to a template. The template
  43.                        is a a sequence of the characters ICBWLANV which
  44.                        represent Instructions, Characters, Bytes, Words,
  45.                        Longs, Addresses, Newlines, & Labels respectively.
  46.                        Each character in the template produces an output
  47.                        of the appropriate type, with the template being
  48.                        repeatedly scanned if more output is required.
  49.                        For example NVCCA would give Labelled blocks with
  50.                        two bytes and an address in each. If the template
  51.                        contains a '/' character this marks the re-scan
  52.                        position rather than the beginning. An optional
  53.                        decimal count can precede any output character
  54.                        (ICBWLA) and then applies to this output.
  55.   
  56.   Ec x1 x2             Output Equates for addresses using range x1 to x2
  57.                        Note that labels external to the range are output
  58.                        as the default but if the character 'c' is present
  59.                        and is 'I', 'E' or 'A' then Internal, External or
  60.                        All labels in the range are output respectively
  61.   
  62.   J  x1 x2             Compile labels from x1 to x2 into the symbol table
  63.   
  64.   Fc x1 x2 xx..        Find positions of the hexadecimal digit sequence
  65.                        xx... between x1 and x2. If 'c' is present and is
  66.                        'E' then only even address matches are output
  67.   
  68.   Fc x1 x2 "cc.."      Find positions of the string "cc..." between x1
  69.                        and x2 . If 'c' is present and is 'E' then only
  70.                        match positions at even addresses are given
  71.   
  72.   K  x1 x2 x3 [x4]     Find positions where address x3 is referenced. If
  73.                        x4 is present then find positions where addresses
  74.                        in the range x3= < address < x4 are referenced
  75.   
  76.   U  x1 x2             Set range limits for disassembly
  77.   
  78.   Uc                   Reset to initial range limits. If 'c' is present
  79.                        and is 'C', 'D', 'B' or 'P' the  the limits  of
  80.                        the Code, the Data, the Bss or the (Code + Data)
  81.                        are set. If 'c' is not present the total program
  82.                        length limits are set
  83.   
  84.   Vc x1                Enter (Make) a symbol at address x1. If 'c' is
  85.                        present and is the character 'E' (or 'e') then
  86.                        the symbol is absolute, otherwise it is program
  87.                        relative (Note that V alone outputs a DIS version
  88.                        number and author information).
  89.   
  90.   X  x1                Set the eXecution address for a program when this
  91.                        is different to the load address (this should not
  92.                        be used on programs loaded with the 'P' command)
  93.   
  94.   Y  x1                SYmbol form control. x1 can be a sum of the values
  95.                        1, 2 and 4 to produce the desired effect:
  96.   
  97.                           x1 = 1: output long labels          (0 = short)
  98.                           x1 = 2: output absolute labels   (0 = relative)
  99.                           x1 = 4: input absolute addresses (0 = relative)
  100.                 x1 = 8: use old 68000 instruction syntax
  101.  
  102.   N  x1                Disassembly control. x1 can be a sum of the values
  103.                        1, 2, 4 and 8 to produce the desired effect:
  104.   
  105.                           x1 = 1:   enter labels into the symbol table
  106.                           x1 = 2:    display internal labels in output
  107.                           x1 = 4:    display external labels in output
  108.                           x1 = 8:  use any symbols loaded with program
  109.   
  110.                        Internal and External labels reference addresses
  111.                        inside and outside the program area respectively.
  112.                        Program  symbols will only be available if the
  113.                        program contains a symbol table.
  114.   
  115.   H+  H-               Turn Hexadecimal code output on (+) or off (-)
  116.                        during the disassembly of instructions
  117.   
  118.   D+  D-               Turn character code output on (+) or off (-)
  119.                        during the disassembly of instructions
  120.   
  121.   P prog_name          Load a Program for disassembly
  122.   
  123.   P-                   Unload a Program (or image file)
  124.   
  125.   R file_name x1       Load (Read) a binary image file for disassembly
  126.                        with x1 as the execution address (default = 0)
  127.   
  128.   R-                   Unload a binary image file (or program)
  129.   
  130.   S file_name          Output (Save) disassembly from here onwards to a 
  131.                        specified file
  132.   
  133.   S-                   Turn off saving and close output file
  134.   
  135.   O                    Output file name and range information
  136.   
  137.   Q                    Quit disassembler (safer than ^C !)
  138.   
  139.   T                    Compile auto_disassembly control table (see later)
  140.   
  141.   T-                   Clear auto Table
  142.   
  143.   TD                   Display the contents of the auto control table
  144.   
  145.   TL file_name         Load the auto table contents from specified file 
  146.   
  147.   TS file_name         Save the auto table contents to the specified file 
  148.   
  149.   G                    Run (Go) auto disassembly (see later)
  150.   
  151.   Z                    Delete (Zap) all symbol table entries
  152.   
  153.      When a program or image  file is loaded the relative label forms are
  154.   relative to the start of the file.  Otherwise relative labels take zero
  155.   as a base and are therefore effectively absolute.   Input  values  will
  156.   either be absolute or relative depending on  the  value  set  by  the Y
  157.   command.   In  relative  input  mode an absolute number can be input by
  158.   preceeding it with a '$' sign. If the second number of an input pair is
  159.   preceeded by  a  '+'  sign the value input is added to the value of the
  160.   first parameter to form the  second  parameter.  If  a  '*'  is entered
  161.   instead  of  an  input value then the current  value  of  the  relevant
  162.   parameter is used.   DIS generates address labels by adding a letter in
  163.   front